/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package mx.its.dsw2.view;

import java.util.List;
import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.event.ActionEvent;
import mx.its.dsw2.biblioteca.bl.AutorBlLocal;
import mx.its.dsw2.biblioteca.modelo.Autor;

/**
 *
 * @author franciscojavier
 */
@ManagedBean
@SessionScoped
public class AuthorBean {
    //---------LLAMADAS A LOS EJB'S-------------
    @EJB
    private AutorBlLocal autorBl;
    //----------VARIABLES (PROPIEDADES)
    private List<Autor> lista;
    private Autor author;
    private String accion;
    

    /**
     * Creates a new instance of Author
     */
    public AuthorBean() {
        author= new Autor();
    }
//-------------METODOS GET Y SET--------
    public List<Autor> getLista() {
        lista=autorBl.getAll();
        return lista;
    }
    
    public Autor getAuthor() {
        return author;
    }

    public void setAuthor(Autor author) {
        this.author = author;
    }


//-----------------ACCIONES---------------
//public String prepararNuevo(){
//    author=new Autor();
//    return "AutorCrearEditar";
    public String procesarAccion(){
       if(accion.equalsIgnoreCase("Nuevo")){
        autorBl.Register(author);
       }else{
           if(accion.equalsIgnoreCase("Editar")){
               autorBl.modify(author);
             }else{
      
          if(accion.equalsIgnoreCase("Eliminar")){
               autorBl.delete(author);  
       }
           }
       }
        accion="";
        return "AutorLista";
    
       }
//}
       



//------------LISTENERS------------------
public void prepararNuevo(ActionEvent evt){
    accion="Nuevo";
    author=new Autor();
}
public void prepararEditar(ActionEvent evt){
    accion="Editar";
    int index=Integer.parseInt(evt.getComponent().getClientId().split(":")[2]);
    author=lista.get(index);
    
//    System.out.println(evt.getComponent().getClientId());
//    String arr[]=evt.getComponent().getClientId().split(":");
//    String id=arr[2];
//    int index=Integer.parseInt(id);   
}
public void prepararEliminar(ActionEvent evt){
    accion="Eliminar";
    int index=Integer.parseInt(evt.getComponent().getClientId().split(":")[2]);
    author=lista.get(index);
}
    
    
    }